package API.String.Regex;

public class CaptureGroup1 {
    public static void main(String[] args) {
        //正则表达式根据"("进行分组，不看")"
        //例：(a)(b)(c)
        //     1  2  3
        //    (a(b))(c)
        //      1    3
        //        2
        //可以使用"\组号"来取出相应片段重新使用
        //分组的应用：筛选首位单个字符相同的字符串
        String[] strs1 = new String[]{"1abc1", "b124b", "9dga19", "123n12a"};
        for(String s : strs1) {
            System.out.println(s.matches("(.).+\\1"));
        }
        System.out.println("-------------------------");
        //筛选首位有多个相同字符，且相同的字符串
        String[] strs2 = new String[]{"aaa123aaa", "999qwsdawd999", "hhhbw74hh", "asms"};
        for(String s : strs2) {
            System.out.println(s.matches("((.)\\2*).+\\1"));
        }
    }
}
